<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        //1. 对象属性或者方法的查找顺序 ；
        // 对象属性的查找规则：会先在自身查找 如果找到就使用，没找到就在原型上查找 ，如果都没找到就返还undefined；
        // 就近原则
        // function Person(){
        //     this.name = "张三";
        //     // this.age = 21;
        // }
        // Person.prototype.age = 20;
        // let zhangsan = new Person();
        // // console.log(zhangsan);
        // console.log(zhangsan.age);


        // 创建一个对象 :创建在原型上；
    //    var obj =  Object.create({age:20});
    // //    console.log(obj);
    // console.log(obj.age);

        // 内置构造函数;
        // Array.prototype.str = "hello";

        // var arr = [1,2,3];
        // arr.forEach(item=>{
        //     console.log(item);
        // })

        /* 
            fucntion Array(name){
                this.name = name;
            }
        
        
        */
        

        Array.prototype.MyforEach = function(fn){
            // console.log(this);
            for(let i=0;i<this.length;i++){
                fn(this[i]);
            }
        }
        let arr = new Array(1,2,3);
        // console.log(arr.str);
        arr.MyforEach(item=>{
            console.log(item);
        })

        
    </script>
</body>
</html>